import pandas as pd
import numpy as np

# 生成2023年全年15分钟间隔数据
date_rng = pd.date_range(start='2023-01-01', end='2023-12-31 23:45:00', freq='15T')

# 创建电价模式
base = 30 + 10*np.sin(np.linspace(0, 6*np.pi, len(date_rng)))  # 年周期
daily = 5*np.sin(2*np.pi*date_rng.hour/24)                    # 日周期
noise = np.random.normal(0, 3, len(date_rng))                 # 随机波动

df = pd.DataFrame({
    'datetime': date_rng,
    'price': np.clip(base + daily + noise, 25, 50).round(2),
    'temp': np.random.uniform(25, 50),
    'humidity': np.random.uniform(25, 50),
    'hour_sin': np.random.uniform(25, 50),
    'hour_cos': np.random.uniform(25, 50),
    'weekend': np.random.randint(1, 7),
})

# 保存为CSV
df.to_csv('electricity_prices.csv', index=False)